home *** CD-ROM | disk | FTP | other *** search
/ io Programmo 60 / IOPROG_60.ISO / soft / c++ / gsl-1.1.1-setup.exe / {app} / src / specfunc / hyperg.h < prev    next >
Encoding:
C/C++ Source or Header  |  2001-11-01  |  2.3 KB  |  79 lines

  1. /* specfunc/hyperg.h
  2.  * 
  3.  * Copyright (C) 1996, 1997, 1998, 1999, 2000 Gerard Jungman
  4.  * 
  5.  * This program is free software; you can redistribute it and/or modify
  6.  * it under the terms of the GNU General Public License as published by
  7.  * the Free Software Foundation; either version 2 of the License, or (at
  8.  * your option) any later version.
  9.  * 
  10.  * This program is distributed in the hope that it will be useful, but
  11.  * WITHOUT ANY WARRANTY; without even the implied warranty of
  12.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  13.  * General Public License for more details.
  14.  * 
  15.  * You should have received a copy of the GNU General Public License
  16.  * along with this program; if not, write to the Free Software
  17.  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  18.  */
  19.  
  20. /* Author:  G. Jungman */
  21.  
  22. /* Miscellaneous implementations of use
  23.  * for evaluation of hypergeometric functions.
  24.  */
  25. #ifndef _HYPERG_H_
  26. #define _HYPERG_H_
  27.  
  28. #include <gsl/gsl_sf_result.h>
  29.  
  30.  
  31. /* Direct implementation of 1F1 series.
  32.  */
  33. int
  34. gsl_sf_hyperg_1F1_series_e(const double a, const double b, const double x, gsl_sf_result * result);
  35.  
  36.  
  37. /* Implementation of the 1F1 related to the
  38.  * incomplete gamma function: 1F1(1,b,x), b >= 1.
  39.  */
  40. int
  41. gsl_sf_hyperg_1F1_1_e(double b, double x, gsl_sf_result * result);
  42.  
  43.  
  44. /* 1F1(1,b,x) for integer b >= 1
  45.  */
  46. int
  47. gsl_sf_hyperg_1F1_1_int_e(int b, double x, gsl_sf_result * result);
  48.  
  49.  
  50. /* Implementation of large b asymptotic.
  51.  * [Bateman v. I, 6.13.3 (18)]
  52.  * [Luke, The Special Functions and Their Approximations v. I, p. 129, 4.8 (4)]
  53.  *
  54.  * a^2 << b, |x|/|b| < 1 - delta
  55.  */
  56. int
  57. gsl_sf_hyperg_1F1_large_b_e(const double a, const double b, const double x, gsl_sf_result * result);
  58.  
  59.  
  60. /* Implementation of large b asymptotic.
  61.  *
  62.  * Assumes a > 0 is small, x > 0, and |x|<|b|.
  63.  */
  64. int
  65. gsl_sf_hyperg_U_large_b_e(const double a, const double b, const double x,
  66.                              gsl_sf_result * result,
  67.                              double * ln_multiplier
  68.                              );
  69.  
  70.  
  71. /* Implementation of 2F0 asymptotic series.
  72.  */
  73. int
  74. gsl_sf_hyperg_2F0_series_e(const double a, const double b, const double x, int n_trunc,
  75.                               gsl_sf_result * result);
  76.  
  77.  
  78. #endif /* !_HYPERG_H_ */
  79.